//
// RS Game Framework
// Copyright © 2009 Jedd Haberstro
// jhaberstro@gmail.com
// 
// $Id:
//

#ifndef RS_GRAPHICS_GRAPHICSCONTEXT_HPP
#define RS_GRAPHICS_GRAPHICSCONTEXT_HPP

#include "rs/graphics/GraphicsForwards.hpp"
#include "rs/reflection/Reflection.hpp"
#include "rs/ReferenceCounted.hpp"

namespace rs
{
    namespace graphics
    {
        class GraphicsContext : public ReferenceCounted
        {
			RS_DECLARE_POLYMORPHIC_REFLECTION();
	
        public:
            
            virtual ~GraphicsContext() { };
            
            virtual void Update() = 0;
			
			virtual Boolean Begin() = 0;
            
            virtual Boolean End() = 0;
        };		
    }
}

#endif // RS_GRAPHICS_GRAPHICSCONTEXT_HPP
